#ifndef DRAWCOMPONMENT_H
#define DRAWCOMPONMENT_H
#include "common.h"

class DrawComponment
{
public:
    DrawComponment(QAxObject* modelSpace,std::map<QString,QString>* tableData,int wndNum);
    //view:0-vertical,1-front,2:side,pos:1-left 口<,-1-right>口
    void DrawLBoard(QPointF startPoint,int view);
    void DrawEdge(QPointF startPoint,int view);
    void DrawBoard(QPointF startPoint,int view);
    void DrawLeaf(QPointF startPoint,int view);
    void DrawHinge(QPointF startPoint,int view);
private:
    //抽象组件
    QVariantList DrawDoubleLSlot(QPointF startPoint,int view,int pos);
    QVariantList DrawSingleEdge(QPointF startPoint,int view,int pos,int type); //type-0-隐形平门边 1-平门边,2-隐形平盖片门边,3-平盖片门边
    QVariantList DrawSingleBoard(QPointF startPoint,int view,int pos); //pos-1上板,-1-下板
    QVariantList DrawSingleLeaf(QPointF startPoint,int view);
    std::map<QString,QString>* windowData;
    QAxObject *pModelSpace;
    int windowNum;

};

#endif // DRAWCOMPONMENT_H
